<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Response{
    public $description=array(    
            0=>"success",
            1000=>"缺少必要参数",
            1001=>"请求方式有误",
            1002=>"数据库操作失败",
            1003=>"参数有误",
            1004=>"没有权限操作",

            //2000  user
            2000=>"账号不存在",
            2001=>"账号被禁用",
            2002=>"密码错误",
            2003=>"当天短信超限",
            2004=>"短时间内禁止重复发送",
            2005=>"邮件发送失败",
            2006=>"尚未登录",
            2007=>"小程序登陆有误",
            2008=>"禁止重复绑定",
            2009=>"手机号已使用",
            2010=>"验证码失效",
            2011=>"登陆超时",
            2012=>"邮箱格式不合法",
            2013=>"邮箱已被别人使用",
            2014=>"尚未发送邮件",
            2015=>"禁止重复提交学校信息",
            2016=>"禁止重复提交个人信息",
            2017=>"短信发送失败",
            2018=>"未绑定手机号",
            2019=>"身份认证尚未通过",
            2020=>"尚未绑定邮箱",
            2021=>"尚未提交身份认证",
            2022=>"身份认证失败",
            2023=>"上传文件失败",
            2024=>"支付回调失败",


            //3000 task
            3000=>"任务不存在",
            3001=>"任务状态有误",
            3002=>"任务领取状态有误",

            3003=>"任务已被锁定",
            3004=>"支付订单任务失败",
            3005=>"尚有未支付的订单",
            3006=>"没有权限获取当前任务详情",

            3007=>"只能申请2次取消任务",
            3008=>"只能申请2次延期任务",
            3009=>"当前任务禁止再次延期",
            3010=>"当前任务没有申请",
            3011=>"当前任务已经延期过，禁止再次延期",
            3012=>"当前任务已被领取",
            3013=>"当前任务已超时",
            3014=>"当前任务没有支付过",
            3015=>"保证金金额不匹配",
            3016=>"缴纳保证金与剩余保证金不匹配",
            3017=>"扣除保证金超过剩余保证金",
            3018=>"当前任务没有申请延期",
            3019=>"当前任务没有申请取消",
            3020=>"退款失败",
            3021=>"没有学生奖励",
            3022=>"邀请人信息有误",
            3023=>"延期时间有误",

 
    );

    public function __construct(){
        $this->CI =& get_instance(); 
    }

    /**
     * [sendData description]
     * @param  [type] $status [description]
     * @param  [type] $data   [description]
     * @return [type]         [description]
     */
    public function sendData($status,$data=array(),$out_data =array()){
        log_message('info', "status:$status,data:".json_encode($data).",out_data:".json_encode($out_data));     
        $ret['status'] = $status;
        $ret['desc'] = $this->description[$status];
        // if($data){
            $ret['data'] = $data;
        // }
        // if($out_data){
            $ret['out_data'] = $out_data;
        // }
        $this->CI->output->set_output(json_encode($ret));
    }
}